Technical development related to an artificial intelligence (AI) chip has been active. An AI chip can be considered to be a semiconductor integrated circuit having an arithmetic processing function based on AI technology. For example, a chip implemented with a neural network is also known.
A convolutional neural network (CNN), which is a kind of deep neural network (DNN) exerts an excellent performance especially in the field of image recognition processing. The CNN includes a convolution layer and a pooling layer.
The convolution layer extracts features of data of an immediately-preceding layer by a convolution operation using a filter (kernel) given by, for example, a square matrix. For example, if image data comprising a matrix of N rows×M columns is convoluted by a filter of 3×3, a feature vector (tensor) of (N−2) rows×(M−2) columns is calculated.
The pooling layer is, in short, provided for reducing the data size of the immediately-preceding layer. For example, the amount of data can be reduced by dividing an output of the convolution layer by a region of 2×2 to take a representative value within the region. Passing the maximum value within a region to the next layer is referred to as max pooling. It is theoretically possible to extract an average value or the minimum value within a region as a representative value.